#pragma once
#include <string>
#include <vector>
#include <memory>
#include <utility>
#include <ctime>
#include <mutex>
#include <opencv2/opencv.hpp>

#include "common/model_config.h"
#include "tensorrt/base/trt_predictor.h"
#include "tensorrt/trtmodel_manager.h"


namespace ai {

class TRTOcrRecPredictor : public TRTPredictor {
public:
  TRTOcrRecPredictor(TRTPackPredictor* model, TRTModelManager* mng, LogInfo *lg);
  ~TRTOcrRecPredictor(){}
  
private:
  int RunDet(stream::ImageBlob* blob, std::vector<BaseInfo*>& det_infos) ;

  int GetConvDetectionResult(stream::ImageBlob& img_blob, std::vector<BaseInfo*>& det_infos);


private:



private:
  std::vector<float*> outputs;
  std::vector<int> outputs_size;
  std::vector<std::vector<int64_t>> outputs_shapes;
  
};



}  // namespace hb
